#include <stdio.h>
#include <stdlib.h>

int main(void){
  int *p = NULL;
  p = malloc(sizeof(int));
  scanf("%d",p);
  printf("valor apontado por p: %d \n",*p);
  printf("endereço do ponteiro p: %x \n",&p);
  printf("endereço apontado por p: %x \n",p);
  printf("endereço apontado por p: %x \n",&*p);
  printf("quadrado do valor apontado por p: %d \n",(*p)*(*p));

  free(p);

  return 0;
}
